package com.zl.tby.service;

import com.zl.tby.core.base.bean.TbyPageResult;
import com.zl.tby.core.common.R;
import com.zl.tby.dto.TbyWildCameraAttachQuery;
import com.zl.tby.model.TbyWildCameraAttach;

import java.util.List;

/**
 * 野保相机信息 service
 * @author changpeng
 * @version 1.0
 * @since 2024/8/6 19:56
 */
public interface ITbyWildCameraAttachService {

    /**
     * 根据id获取对象
     * @param id: 主键id
     * @return 实体对象
     */
    TbyWildCameraAttach get(Long id);

    /**
     * 删除
     * @param id: 主键
     * @return
     */
    R<Void> delete(Long id);

    /**
     * 分页查询
     * @param query: 查询参数
     * @return 结果
     */
    TbyPageResult<TbyWildCameraAttach> page(TbyWildCameraAttachQuery query);

    /**
     * 列表查询
     * @param query: 查询参数
     * @return 结果
     */
    List<TbyWildCameraAttach> list(TbyWildCameraAttachQuery query);

    /**
     * 更新物种
     * @param id: 主键id
     * @param speciesId: 物种id
     * @param speciesCode：物种编码
     * @param speciesName: 物种名称
     * @return 结果
     */
    R<Void> updateSpecies(Long id, Long speciesId, String speciesCode, String speciesName);
}
